In the field of satellite telecommunications, in particular for the return channel (the return channel corresponds to the transmissions between the user terminal and a gateway on the ground via the satellite) or for direct communication between terminals via the satellite, the transmission of sporadic data causes a loss of efficiency in the use of resources. In fact, this sporadic transmission from a user terminal implies a low aggregation of the data at this terminal. The transmission bit rate is then below the maximum bit rate that can be achieved. This is caused by the segmentation of the data packets into a set of fragments with the aim of adapting to the size of the containers that the physical layer of the satellite can process. A fragment is a sub-set of a higher level message (if the communication protocol uses a layered model). The use of fragments results from the fact that the size of a message can be greater than the maximum size of a container. In this case, in order to transmit the message, a plurality of fragments must be constituted and transmitted independently of one another. Once the fragments have been received, the activity that consists in reconstituting the original message from these fragments is the reassembly. A container is a virtual receptacle having a defined size (in bits) that can receive data in order to transport it. If the size of the data packets is different from the size of these containers or is not a multiple of the size of these containers (which can frequently be the case), the segmentation of the packets necessitates the insertion of padding symbols. The inefficiency in terms of the use of the resource caused by inserting these padding symbols can reach almost 50% (in the case of a data packet having a size very slightly larger than that of the container). The fixed size of these containers is generally imposed by the physical layer applying an error correcting code.
It is known from the prior art, as for example in the article “Low-Density Parity-Check Convolutional Codes applied to packet based communication systems”, by Z. Chen, IEEE Globecom 2005, to use convolutional error correcting codes, such as LDPC-CC (the acronym for “Low Density Parity Check Convolutional Codes”) codes, for example, having good levels of performance without being dedicated to a fixed size. These codes, in memory, nevertheless require the insertion of sequences upstream and downstream of the data to be transmitted, lowering the bit rates in a manner identical to the padding bits. Where the data packets to be coded are of small size, these sequences can represent a large proportion of the data to be transmitted.
It is also known from the prior art to use block correcting codes, the performance of which is better than that of convolutional codes. The application of a block error correcting code is optimized for a given block size. A data block is all of the data that has been included in the container by the higher layer (possibly complemented by a header or a trailer).
There are known communication models and data transmission methods that are organized in a plurality of layers. For example, the OSI model includes in particular the network, data link and physical layers. In these systems, the size of the data blocks managed by the physical layer is fixed by constraints linked to coding, the constraints of the communication channel access protocol and possibly other constraints (a plurality of discrete sizes may nevertheless coexist in a given standard). However, the size of the packets of the network layer and the size of the data blocks of the physical layer are not necessarily identical or even one a multiple of the other because of the possible disparity in terms of the volume of the information to be transported. This size difference between the packets of the network layer and the data blocks processed by the physical layer obliges the data link layer to effect a segmentation that may necessitate considerable insertion of padding symbols leading to a loss of efficiency in terms of the use of the resource (close to 50% in the worst case).
There are known in the prior art methods for adapting the efficiency of the correcting code, as in PCT application WO 2010/022786 A1, in order to adapt the size of the packets to the size of the containers. However, these methods require the use of correcting codes that are highly adaptable in terms of efficiency, and transmission of the information about the coding rate used to the decoder.
There are also known in the prior art, as for example in PCT application WO 2007/064764 A2, methods and systems in which the physical layer offers a plurality of different container sizes. The physical layer therefore utilizes a certain number of predefined container sizes in which the data received from the higher layers must be encapsulated. Encapsulation consists in integrating the higher level message into a data entity of the level in question by adding control information (generally by way of a header and potentially a trailer). The converse process, enabling extraction of the message and removal of the control information in order to pass it to the higher level, is referred to as de-encapsulation. One or more physical container sizes may be used, therefore making it possible:
to adapt to the propagation conditions of the transmission channel for example, if an error correcting code is not used, or
to adapt to the constraints governing access to the resource and to the performance of the waveform if a plurality of symbol bit rates or an adaptive waveform are used.
However, these different container sizes (associated with coder blocks) are generally limited in number (non-continuous available sizes) and potentially decorrelated from the size of the packets managed by the higher layers, which therefore does not make it possible to solve completely the problem of the loss of efficiency linked to inserting padding symbols when segmenting these packets.
There is known in the prior art a method known as VSP (Variable Size Packet) which uses the different block sizes defined in the DVB-RCS standard to improve the efficiency of encapsulation from the network level to the physical level. This solution, over and above the complexity of implementation of the coder (more than ten interleavers to be stored in memory of a Field-Programmable Gate Array (FPGA)), does not solve the problem of the threshold effect of the encapsulation and the associated efficiency. It makes it possible to improve the efficiency of use partly but not to eliminate padding completely as the envisaged solution proposes.